package com.wms.mytool;

import cn.hutool.core.date.DateUtil;
import com.auth0.jwt.JWT;
import com.auth0.jwt.JWTVerifier;
import com.auth0.jwt.algorithms.Algorithm;
import com.auth0.jwt.interfaces.DecodedJWT;

import java.util.Date;
import java.util.HashMap;
import java.util.Map;

/**
 * @author li xiaoYu
 * @data 2023年 10月 14日17:25
 */
public class TokenUtil {
    /**
     * token过期时间
     */
    private static final long EXPIRE_TIME = 30 * 60 * 1000;
    /**
     * token秘钥
     */
    private static final String TOKEN_SECRET = "LiXiaoYu";


    /**
     * 生成签名，30分钟过期
     * @param username 用户名
     * @return 生成的token
     */

    public static String createToken(String username){
        return JWT.create().withAudience(username) //将 user id 保存到token 里面，作为载荷
                .withExpiresAt(DateUtil.offsetHour(new Date(),2)) // 2小时后token过期
                .sign(Algorithm.HMAC256(TOKEN_SECRET));//以 password 作为  token 的密钥
    }


}
